package com.sl.water.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.sl.water.dto.PlanDynamicDTO;
import com.sl.water.entity.PlanDynamic;


/**
 * @description:预案表 服务接口
 * @author: duan
 * @time: 2025-06-26 14:19
 */

public interface PlanDynamicService extends IService<PlanDynamic> {
    /**
     * 根据预演方案ID 生成预案数据
     *
     * @param rehearsalId 预演方案ID
     */
    PlanDynamic createByYY(Long rehearsalId);

    /**
     * 根据预演方案ID 删除预案数据
     *
     * @param rehearsalId
     */
    void removeByRehearsalId(Long rehearsalId);

    /**
     * 分页列表查询
     *
     * @return
     */
    Page<PlanDynamic> pageList(int page, int size, String name);

    /**
     * 预案信息查询
     *
     * @param id 预案ID
     * @return
     */
    PlanDynamicDTO getPlanDynamicDTOById(Long id);

    /**
     * 更改状态
     *
     * @param id    主键
     * @param state 状态
     * @return
     */
    boolean updateState(long id, Integer state);

    void  removeData(long id);
}
